package cn.com.dcsgo.service;

import cn.com.dcsgo.domain.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * UserService
 *
 * @author Dcsgo
 * @since 2025/4/3 10:29
 */

public interface UserService extends IService<User> {
    /**
     * 通过手机号查询用户信息
     *
     * @param phone phone
     * @return User
     */
    User getUserByPhone(String phone);

    /**
     * 通过邮箱查询用户信息
     *
     * @param email phone
     * @return User
     */
    User getUserByEmail(String email);

    /**
     * 通过用户名查询用户信息
     *
     * @param username phone
     * @return User
     */
    User getUserByUsername(String username);

    /**
     * 判断用户名是否存在
     *
     * @param username username
     * @return true 存在，false 不存在
     */
    boolean hasUsername(String username);

    /**
     * 判断手机号是否存在
     *
     * @param phone phone
     * @return true 存在，false 不存在
     */
    boolean hasPhone(String phone);

    /**
     * 判断邮箱是否存在
     *
     * @param email email
     * @return true 存在，false 不存在
     */
    boolean hasEmail(String email);
}
